home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Gold Collection / Software Vault - The Gold Collection (American Databankers) (1993).ISO / cdr47 / 335_01.zip / AS2650.TXT < prev    next >
Text File  |  1993-04-01  |  14KB  |  661 lines

  1.  
  2.  
  3.  
  4.                                   - 1 -
  5.  
  6.  
  7.  
  8.        A.  Appendix_for_as2650_Frankenstein_Assembler
  9.  
  10.        A.1  Pseudo_Operations
  11.  
  12.        A.1.1  Standard_Pseudo_Operation_Mnemonics
  13.  
  14.             End                                END
  15.             File Inclusion                     INCL INCLUDE
  16.             If                                 IF
  17.             Else                               ELSE
  18.             End If                             ENDI
  19.             Equate                             EQU
  20.             Set                                SET
  21.             Org                                ORG
  22.             Reserve Memory                     RES RESERVE RMB
  23.             Define Byte Data                   BYTE DATA DB FCB
  24.             Define Word Data                   DW FDB WORD
  25.             Define String Data                 FCC STRING
  26.             Define Character Set Translation   CHARSET
  27.             Define Character Value             CHARDEF CHD
  28.             Use Character Translation          CHARUSE
  29.  
  30.        A.1.2  Machine_Dependent_Pseudo_Operations
  31.  
  32.        A.1.2.1  Define_Address_Constant
  33.  
  34.             [Label] ACON expression [, expression] ...
  35.  
  36.        The acon statement generates a two byte integer for each
  37.        expression in the expression list.  Each expression is
  38.        limited in value from 0 to 32767, values outside this range
  39.        will result in an "expression exceeds available field width"
  40.        error.  There can be up to 128 expressions on the line,
  41.        within the line length limit.  The optional label is set to
  42.        the address of the first expression.
  43.  
  44.        A.2  Instructions
  45.  
  46.        A.2.1  Instruction_List
  47.  
  48.        Opcode   Syntax                               Selection Criteria
  49.  
  50.  
  51.        ADDA      ',' REG  expr
  52.        ADDA      ',' REG '*' expr ',' REG ',' '+'
  53.        ADDA      ',' REG '*' expr ',' REG ',' '-'
  54.        ADDA      ',' REG '*' expr ',' REG
  55.        ADDA      ',' REG '*' expr
  56.        ADDA      ',' REG expr ',' REG ',' '+'
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.                                   - 2 -
  71.  
  72.  
  73.  
  74.        Opcode   Syntax                               Selection Criteria
  75.  
  76.        ADDA      ',' REG expr ',' REG ',' '-'
  77.        ADDA      ',' REG expr ',' REG
  78.  
  79.        ADDI      ',' REG expr
  80.  
  81.        ADDR      ',' REG '*' expr
  82.        ADDR      ',' REG expr
  83.  
  84.        ADDZ      REG
  85.  
  86.        ANDA      ',' REG  expr
  87.        ANDA      ',' REG '*' expr ',' REG ',' '+'
  88.        ANDA      ',' REG '*' expr ',' REG ',' '-'
  89.        ANDA      ',' REG '*' expr ',' REG
  90.        ANDA      ',' REG '*' expr
  91.        ANDA      ',' REG expr ',' REG ',' '+'
  92.        ANDA      ',' REG expr ',' REG ',' '-'
  93.        ANDA      ',' REG expr ',' REG
  94.  
  95.        ANDI      ',' REG expr
  96.  
  97.        ANDR      ',' REG '*' expr
  98.        ANDR      ',' REG expr
  99.  
  100.        ANDZ      REG                                 REG1
  101.        ANDZ      REG                                 REG2
  102.        ANDZ      REG                                 REG3
  103.  
  104.        BCFA      ',' CONDITION '*' expr              COND0
  105.        BCFA      ',' CONDITION '*' expr              COND1
  106.        BCFA      ',' CONDITION '*' expr              COND2
  107.        BCFA      ',' CONDITION expr                  COND0
  108.        BCFA      ',' CONDITION expr                  COND1
  109.        BCFA      ',' CONDITION expr                  COND2
  110.  
  111.        BCFR      ',' CONDITION '*' expr              COND0
  112.        BCFR      ',' CONDITION '*' expr              COND1
  113.        BCFR      ',' CONDITION '*' expr              COND2
  114.        BCFR      ',' CONDITION expr                  COND0
  115.        BCFR      ',' CONDITION expr                  COND1
  116.        BCFR      ',' CONDITION expr                  COND2
  117.  
  118.        BCTA      ',' CONDITION '*' expr
  119.        BCTA      ',' CONDITION expr
  120.  
  121.        BCTR      ',' CONDITION '*' expr
  122.        BCTR      ',' CONDITION expr
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.                                   - 3 -
  137.  
  138.  
  139.  
  140.        Opcode   Syntax                               Selection Criteria
  141.  
  142.  
  143.        BDRA      ',' REG '*' expr
  144.        BDRA      ',' REG expr
  145.  
  146.        BDRR      ',' REG '*' expr
  147.        BDRR      ',' REG expr
  148.  
  149.        BIRA      ',' REG '*' expr
  150.        BIRA      ',' REG expr
  151.  
  152.        BIRR      ',' REG '*' expr
  153.        BIRR      ',' REG expr
  154.  
  155.        BRNA      ',' REG '*' expr
  156.        BRNA      ',' REG expr
  157.  
  158.        BRNR      ',' REG '*' expr
  159.        BRNR      ',' REG expr
  160.  
  161.        BSFA      ',' CONDITION '*' expr              COND0
  162.        BSFA      ',' CONDITION '*' expr              COND1
  163.        BSFA      ',' CONDITION '*' expr              COND2
  164.        BSFA      ',' CONDITION expr                  COND0
  165.        BSFA      ',' CONDITION expr                  COND1
  166.        BSFA      ',' CONDITION expr                  COND2
  167.  
  168.        BSFR      ',' CONDITION '*' expr              COND0
  169.        BSFR      ',' CONDITION '*' expr              COND1
  170.        BSFR      ',' CONDITION '*' expr              COND2
  171.        BSFR      ',' CONDITION expr                  COND0
  172.        BSFR      ',' CONDITION expr                  COND1
  173.        BSFR      ',' CONDITION expr                  COND2
  174.  
  175.        BSNA      ',' REG '*' expr
  176.        BSNA      ',' REG expr
  177.  
  178.        BSNR      ',' REG '*' expr
  179.        BSNR      ',' REG expr
  180.  
  181.        BSTA      ',' CONDITION '*' expr
  182.        BSTA      ',' CONDITION expr
  183.  
  184.        BSTR      ',' CONDITION '*' expr
  185.        BSTR      ',' CONDITION expr
  186.  
  187.        BSXA      '*' expr ',' REG                    REG3
  188.        BSXA      expr ',' REG                        REG3
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.                                   - 4 -
  203.  
  204.  
  205.  
  206.        Opcode   Syntax                               Selection Criteria
  207.  
  208.  
  209.        BXA       '*' expr ',' REG                    REG3
  210.        BXA       expr ',' REG                        REG3
  211.  
  212.        COMA      ',' REG  expr
  213.        COMA      ',' REG '*' expr ',' REG ',' '+'
  214.        COMA      ',' REG '*' expr ',' REG ',' '-'
  215.        COMA      ',' REG '*' expr ',' REG
  216.        COMA      ',' REG '*' expr
  217.        COMA      ',' REG expr ',' REG ',' '+'
  218.        COMA      ',' REG expr ',' REG ',' '-'
  219.        COMA      ',' REG expr ',' REG
  220.  
  221.        COMI      ',' REG expr
  222.  
  223.        COMR      ',' REG '*' expr
  224.        COMR      ',' REG expr
  225.  
  226.        COMZ      REG
  227.  
  228.        CPSL      expr
  229.  
  230.        CPSU      expr
  231.  
  232.        DAR       ',' REG
  233.  
  234.        EORA      ',' REG  expr
  235.        EORA      ',' REG '*' expr ',' REG ',' '+'
  236.        EORA      ',' REG '*' expr ',' REG ',' '-'
  237.        EORA      ',' REG '*' expr ',' REG
  238.        EORA      ',' REG '*' expr
  239.        EORA      ',' REG expr ',' REG ',' '+'
  240.        EORA      ',' REG expr ',' REG ',' '-'
  241.        EORA      ',' REG expr ',' REG
  242.  
  243.        EORI      ',' REG expr
  244.  
  245.        EORR      ',' REG '*' expr
  246.        EORR      ',' REG expr
  247.  
  248.        EORZ      REG
  249.  
  250.        HALT
  251.  
  252.        IORA      ',' REG  expr
  253.        IORA      ',' REG '*' expr ',' REG ',' '+'
  254.        IORA      ',' REG '*' expr ',' REG ',' '-'
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.                                   - 5 -
  269.  
  270.  
  271.  
  272.        Opcode   Syntax                               Selection Criteria
  273.  
  274.        IORA      ',' REG '*' expr ',' REG
  275.        IORA      ',' REG '*' expr
  276.        IORA      ',' REG expr ',' REG ',' '+'
  277.        IORA      ',' REG expr ',' REG ',' '-'
  278.        IORA      ',' REG expr ',' REG
  279.  
  280.        IORI      ',' REG expr
  281.  
  282.        IORR      ',' REG '*' expr
  283.        IORR      ',' REG expr
  284.  
  285.        IORZ      REG
  286.  
  287.        LODA      ',' REG  expr
  288.        LODA      ',' REG '*' expr ',' REG ',' '+'
  289.        LODA      ',' REG '*' expr ',' REG ',' '-'
  290.        LODA      ',' REG '*' expr ',' REG
  291.        LODA      ',' REG '*' expr
  292.        LODA      ',' REG expr ',' REG ',' '+'
  293.        LODA      ',' REG expr ',' REG ',' '-'
  294.        LODA      ',' REG expr ',' REG
  295.  
  296.        LODI      ',' REG expr
  297.  
  298.        LODR      ',' REG '*' expr
  299.        LODR      ',' REG expr
  300.  
  301.        LODZ      REG                                 REG0
  302.        LODZ      REG                                 REG1
  303.        LODZ      REG                                 REG2
  304.        LODZ      REG                                 REG3
  305.  
  306.        LPSL
  307.  
  308.        LPSU
  309.  
  310.        NOP
  311.  
  312.        PPSL      expr
  313.  
  314.        PPSU      expr
  315.  
  316.        REDC      ',' REG
  317.  
  318.        REDD      ',' REG
  319.  
  320.        REDE      ',' REG expr
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.                                   - 6 -
  335.  
  336.  
  337.  
  338.        Opcode   Syntax                               Selection Criteria
  339.  
  340.  
  341.        RETC      ',' CONDITION
  342.  
  343.        RETE      ',' CONDITION
  344.  
  345.        RRL       ',' REG
  346.  
  347.        RRR       ',' REG
  348.  
  349.        SPSL
  350.  
  351.        SPSU
  352.  
  353.        STRA      ',' REG  expr
  354.        STRA      ',' REG '*' expr ',' REG ',' '+'
  355.        STRA      ',' REG '*' expr ',' REG ',' '-'
  356.        STRA      ',' REG '*' expr ',' REG
  357.        STRA      ',' REG '*' expr
  358.        STRA      ',' REG expr ',' REG ',' '+'
  359.        STRA      ',' REG expr ',' REG ',' '-'
  360.        STRA      ',' REG expr ',' REG
  361.  
  362.        STRR      ',' REG '*' expr
  363.        STRR      ',' REG expr
  364.  
  365.        STRZ      REG                                 REG1
  366.        STRZ      REG                                 REG2
  367.        STRZ      REG                                 REG3
  368.  
  369.        SUBA      ',' REG  expr
  370.        SUBA      ',' REG '*' expr ',' REG ',' '+'
  371.        SUBA      ',' REG '*' expr ',' REG ',' '-'
  372.        SUBA      ',' REG '*' expr ',' REG
  373.        SUBA      ',' REG '*' expr
  374.        SUBA      ',' REG expr ',' REG ',' '+'
  375.        SUBA      ',' REG expr ',' REG ',' '-'
  376.        SUBA      ',' REG expr ',' REG
  377.  
  378.        SUBI      ',' REG expr
  379.  
  380.        SUBR      ',' REG '*' expr
  381.        SUBR      ',' REG expr
  382.  
  383.        SUBZ      REG
  384.  
  385.        TMI       ',' REG expr
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.                                   - 7 -
  401.  
  402.  
  403.  
  404.        Opcode   Syntax                               Selection Criteria
  405.  
  406.        TPSL      expr
  407.  
  408.        TPSU      expr
  409.  
  410.        WRTC      ',' REG
  411.  
  412.        WRTD      ',' REG
  413.  
  414.        WRTE      ',' REG expr
  415.  
  416.        ZBRR      '*' expr
  417.        ZBRR      expr
  418.  
  419.        ZBSR      '*' expr
  420.        ZBSR      expr
  421.  
  422.        A.2.2  Register_and_Condition_Reserved_Symbols  The REG and
  423.        CONDITION fields in instructions are restricted to only the
  424.        values available as reserved symbols. These are r0 - r3, or
  425.        R0 - R3 for registers, and plus, PLUS, minus, MINUS, zero,
  426.        ZERO, gt, GT, lt, LT, eq, EQ, un, UN, always, and ALWAYS for
  427.        conditions.
  428.  
  429.        A.2.3  Destination_Register_for_Indexed_Addressing  If the
  430.        destination register, the one adjacent to the opcode, is not
  431.        R0 when one of the absolute indexed addressing modes is
  432.        used, an error is issued.
  433.  
  434.        A.2.4  Selection_Criteria_Keywords
  435.  
  436.             REG0 REG1 REG2 REG3
  437.  
  438.                  Some instructions are restricted to a subset of
  439.                  the registers.  Only those instructions with the
  440.                  specified registers are valid.
  441.  
  442.             COND0 COND1 COND2 COND3
  443.  
  444.                  Some instructions are restricted to a subset of
  445.                  the conditions.  Only those instructions with the
  446.                  specified conditions are valid.
  447.  
  448.                  COND0     EQ, or ZERO
  449.                  COND1     GT, or PLUS
  450.                  COND2     LT, or MINUS
  451.                  COND3     ALWAYS, or UN
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.                                   - 8 -
  467.  
  468.  
  469.  
  470.        A.2.5  Apostrophes  The apostrophes in the syntax field are
  471.        a notation used for the parser generator and are not put in
  472.        the assembler source statement.
  473.  
  474.        A.3  Notes
  475.  
  476.        A.3.1  Location_Counter  The Dollar Sign is used as the
  477.        location counter symbol in this assembler.
  478.  
  479.        A.3.2  Memory_Addressing_Error_Messages
  480.  
  481.        ERROR - expression exceeds available field width
  482.  
  483.             This message occurs when :
  484.  
  485.                - The absolute branch address is to an invalid
  486.                  address, one greater than 32767.
  487.  
  488.                - The absolute or relative address was not in the
  489.                  present memory page.
  490.  
  491.                - The relative offset was outside the range that can
  492.                  be represented in 7 bits.
  493.  
  494.        ERROR - instruction crosses page boundary
  495.  
  496.             The first and last bytes of an instruction are on
  497.             different sides of an 8k page.
  498.  
  499.        WARNING - Page Boundary
  500.  
  501.             The first byte of an instruction is on a 8k page
  502.             boundry.
  503.  
  504.        A.3.3  Page_Wraparound_for_Relative_Addressing  The
  505.        wraparound of an effective address, where a relative address
  506.        from an instruction near a page boundary accesses memory at
  507.        the other side of the page, is not supported in this
  508.        assembler and will result in one or more error messages.
  509.  
  510.        This does not apply to the ZBRR and ZBSR instructions.
  511.        Memory destinations for these can range from 0 to $3f and
  512.        $1fc0 to $1fff.
  513.  
  514.        A.3.4  Relational_Operators  The relational operator
  515.        keywords GT, LT, and EQ are not available.  The '<', '>',
  516.        and '==' special character representations must be used.
  517.  
  518.        A.3.5  Reserved_Symbols
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.                                   - 9 -
  533.  
  534.  
  535.  
  536.        A.3.5.1  Machine_Dependent_Reserved_Symbols  ALWAYS AND
  537.        DEFINED EQ GE GT HIGH LE LOW LT MINUS MOD NE NOT OR PLUS R0
  538.        R1 R2 R3 SHL SHR UN XOR ZERO always and defined eq ge gt
  539.        high le low lt minus mod ne not or plus r0 r1 r2 r3 shl shr
  540.        un xor zero
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.  
  550.  
  551.  
  552.  
  553.  
  554.  
  555.  
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563.  
  564.  
  565.  
  566.  
  567.  
  568.  
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.  
  602.                                  CONTENTS
  603.  
  604.  
  605.        A.  Appendix for as2650 Frankenstein Assembler...........  1
  606.            A.1  Pseudo Operations...............................  1
  607.            A.2  Instructions....................................  1
  608.            A.3  Notes...........................................  8
  609.  
  610.  
  611.  
  612.  
  613.  
  614.  
  615.  
  616.  
  617.  
  618.  
  619.  
  620.  
  621.  
  622.  
  623.  
  624.  
  625.  
  626.  
  627.  
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.                                   - i -
  657.  
  658.  
  659.  
  660.  
  661.